using System;
using System.Configuration;
using System.Data;
using System.Text;
using System.Web.UI.WebControls;
using Anthem;
using App_Code;
using MinCultura.Sinic.Basicas;
using Common;

using MinCultura.Sipa.EntidadesArtes; 
using MinCultura.Sipa.DataAccess.EntidadesArtes;
using MinCultura.Sipa.DataAccess.AgentesArtes;
using MinCultura.Sipa.AgentesArtes;
using UsrControls;

using CompareValidator = Anthem.CompareValidator;
using CustomValidator = Anthem.CustomValidator;
using Label = Anthem.Label;
using RadioButtonList = Anthem.RadioButtonList;
using RegularExpressionValidator = Anthem.RegularExpressionValidator;
using RequiredFieldValidator = Anthem.RequiredFieldValidator;
using TextBox = Anthem.TextBox;

namespace web.Controls
{
	/// <summary>
	/// Summary description for AgentesBasicos.
	/// </summary>
	public class InfraestructuraServicios : SinicUserControl
	{
		protected UsrControls.TextBoxBase txtNumSalidasEmergencia;
		protected Anthem.RequiredFieldValidator reqNumSalidasEmergencia;
		protected UsrControls.TextBoxBase txtNumCamerinosIndividuales;
		protected UsrControls.TextBoxBase txtNumCamerinosColectivos;
		protected UsrControls.TextBoxBase txtNumBanosArtistas;
		protected UsrControls.TextBoxBase txtNumDuchas;
		protected UsrControls.TextBoxBase txtNumSalasEnsayo;
		protected Anthem.RequiredFieldValidator reqNumSalasEnsayo;
		protected UsrControls.TextBoxBase txtNumExtintores;
		protected Anthem.RequiredFieldValidator reqNumExtintores;
		protected Anthem.RequiredFieldValidator reqNumBanosPublicos;
		protected UsrControls.TextBoxBase txtNumBanosPublicos;
		protected Anthem.RadioButtonList rblSiNoTieneRampasAccesoDiscap;
		protected Anthem.RadioButtonList rblSiNoTieneCamerinos;
		protected Anthem.Label lblNumCamerinosIndividuales;
		protected Anthem.Label lblNumCamerinosColectivos;
		protected Anthem.Label lblNumBanosArtistas;
		protected Anthem.RadioButtonList rblSiNoTieneLinoleo;
		protected Anthem.RadioButtonList rblSiNoTieneTalleres;
		protected Anthem.RadioButtonList rblSiNoTienePlanManejoEmergencias;
		protected Anthem.RadioButtonList rblSiNoTieneSenalizacionRutasEvacuacion;
		protected Anthem.RadioButtonList rblSiNoTieneEnfermeria;
		protected Anthem.RadioButtonList rblSiNoTieneBotiquin;
		protected Anthem.RadioButtonList rblSiNoTienePlantaEnergia;
		protected Anthem.Label lblNumDuchas;
		protected Anthem.RadioButtonList rblSiNoTieneDepositos;
		protected Anthem.Label lblTiposDepositos;
		protected Anthem.Label lblTiposTalleres;
		protected Anthem.CheckBoxList cblTiposDepositos;
		protected Anthem.CheckBoxList cblVentaBoleteria;
		protected Anthem.CheckBoxList cblFormaPago;
		protected Anthem.CheckBoxList cblSalonesEstar;
		protected Anthem.CheckBoxList cblTiposTalleres;

		#region - Eventos

		private void Page_Load(object sender, EventArgs e)
		{
			if (!IsPostBack)
			{
				Manager.Register(this);
				reqNumBanosPublicos.ErrorMessage = Utilidad.TraerMensaje("gmsgCampoRequerido", txtNumBanosPublicos.ToolTip);
				reqNumSalidasEmergencia.ErrorMessage = Utilidad.TraerMensaje("gmsgCampoRequerido", txtNumSalidasEmergencia.ToolTip);
				reqNumSalasEnsayo.ErrorMessage = Utilidad.TraerMensaje("gmsgCampoRequerido", txtNumSalasEnsayo.ToolTip);
				reqNumExtintores.ErrorMessage = Utilidad.TraerMensaje("gmsgCampoRequerido", txtNumExtintores.ToolTip);

				if (this.Identificador == 0)
				{
					CargarControles();
				}

				StringBuilder strHabilitarCampos;

				strHabilitarCampos = new StringBuilder();
				strHabilitarCampos.Append(rblSiNoTieneCamerinos.ClientID + "_0,");
				strHabilitarCampos.Append(lblNumCamerinosIndividuales.ClientID + ",");
				strHabilitarCampos.Append(txtNumCamerinosIndividuales.ClientID + ",");
				strHabilitarCampos.Append(lblNumCamerinosColectivos.ClientID + ",");
				strHabilitarCampos.Append(txtNumCamerinosColectivos.ClientID + ",");
				strHabilitarCampos.Append(lblNumBanosArtistas.ClientID + ",");
				strHabilitarCampos.Append(txtNumBanosArtistas.ClientID + ",");
				strHabilitarCampos.Append(lblNumDuchas.ClientID + ",");
				strHabilitarCampos.Append(txtNumDuchas.ClientID);
				rblSiNoTieneCamerinos.Attributes["OnClick"] = "return habilitarCamposSINO(" + strHabilitarCampos.ToString() + ")";

				strHabilitarCampos = new StringBuilder();
				strHabilitarCampos.Append(rblSiNoTieneDepositos.ClientID + "_0,");
				strHabilitarCampos.Append(lblTiposDepositos.ClientID + ",");
				strHabilitarCampos.Append(cblTiposDepositos.ClientID);
				rblSiNoTieneDepositos.Attributes["OnClick"] = "return habilitarCamposSINO(" + strHabilitarCampos.ToString() + ")";
				

				strHabilitarCampos = new StringBuilder();
				strHabilitarCampos.Append(rblSiNoTieneTalleres.ClientID + "_0,");
				strHabilitarCampos.Append(lblTiposTalleres.ClientID + ",");
				strHabilitarCampos.Append(cblTiposTalleres.ClientID);
				rblSiNoTieneTalleres.Attributes["OnClick"] = "return habilitarCamposSINO(" + strHabilitarCampos.ToString() + ")";				
			}
		}

		#endregion 

		#region - Metodos 		

		public DataSet ObtenerDatos()
		{
			DataSet dsServicios = new DataSet();

			//Servicios
			InfraestructuraEntidadesServiciosData infraestructuraEntidadesServiciosData = new InfraestructuraEntidadesServiciosData();
			DataRow fila = infraestructuraEntidadesServiciosData.NewRow();
			fila[InfraestructuraEntidadesServiciosData.INF_ID_FIELD] = this.Identificador;
			fila[InfraestructuraEntidadesServiciosData.INF_NUMERO_BANOS_PUBLICO_FIELD] = txtNumBanosPublicos.Text;
			fila[InfraestructuraEntidadesServiciosData.INF_NUMERO_SALIDAS_EMERGENCIA_FIELD] = txtNumSalidasEmergencia.Text;
			fila[InfraestructuraEntidadesServiciosData.INF_TIENE_RAMPAS_DISCAPACITADOS_FIELD] = rblSiNoTieneRampasAccesoDiscap.SelectedValue;
			fila[InfraestructuraEntidadesServiciosData.INF_TIENE_CAMERINOS_FIELD] = rblSiNoTieneCamerinos.SelectedValue;
			if (rblSiNoTieneCamerinos.SelectedValue == Utilidad.SI)
			{
				if (txtNumCamerinosIndividuales.Text.Trim().Length > 0)
				 fila[InfraestructuraEntidadesServiciosData.INF_NUMERO_CAMERINOS_INDIVIDUALES_FIELD] = txtNumCamerinosIndividuales.Text;
				if (txtNumCamerinosColectivos.Text.Trim().Length > 0)
					fila[InfraestructuraEntidadesServiciosData.INF_NUMERO_CAMERINOS_COLECTIVOS_FIELD] = txtNumCamerinosColectivos.Text;
				if (txtNumBanosArtistas.Text.Trim().Length > 0)
					fila[InfraestructuraEntidadesServiciosData.INF_NUMERO_BANOS_ARTISTAS_FIELD] = txtNumBanosArtistas.Text;
				if (txtNumDuchas.Text.Trim().Length > 0)
					fila[InfraestructuraEntidadesServiciosData.INF_NUMERO_DUCHAS_FIELD] = txtNumDuchas.Text;
			}
			fila[InfraestructuraEntidadesServiciosData.INF_NUMERO_SALAS_ENSAYO_FIELD] = txtNumSalasEnsayo.Text;
			fila[InfraestructuraEntidadesServiciosData.INF_TIENE_LINOLEO_FIELD] = rblSiNoTieneLinoleo.SelectedValue;
			fila[InfraestructuraEntidadesServiciosData.INF_TIENE_PLAN_EMERGENCIA_FIELD] = rblSiNoTienePlanManejoEmergencias.SelectedValue;
			fila[InfraestructuraEntidadesServiciosData.INF_TIENE_SENALIZACION_EVACUACION_FIELD] = rblSiNoTieneSenalizacionRutasEvacuacion.SelectedValue;
			fila[InfraestructuraEntidadesServiciosData.INF_TIENE_ENFERMERIA_FIELD] = rblSiNoTieneEnfermeria.SelectedValue;
			fila[InfraestructuraEntidadesServiciosData.INF_TIENE_BOTIQUIN_FIELD] = rblSiNoTieneBotiquin.SelectedValue;
			fila[InfraestructuraEntidadesServiciosData.INF_NUMERO_EXTINTORES_FIELD] = txtNumExtintores.Text;
			fila[InfraestructuraEntidadesServiciosData.INF_TIENE_PLANTA_ENERGIA_FIELD] = rblSiNoTienePlantaEnergia.SelectedValue;
			fila[InfraestructuraEntidadesServiciosData.INF_TIENE_DEPOSITOS_FIELD] = rblSiNoTieneDepositos.SelectedValue;
			fila[InfraestructuraEntidadesServiciosData.INF_TIENE_TALLERES_FIELD] = rblSiNoTieneTalleres.SelectedValue;

			infraestructuraEntidadesServiciosData.addInfraestructuraEntidadesServicios(fila);
			dsServicios.Tables.Add(infraestructuraEntidadesServiciosData);

			//Depositos
			InfraestructuraDepositosData infraestructuraDepositosData = new InfraestructuraDepositosData();
			if (rblSiNoTieneDepositos.SelectedValue == Utilidad.SI)
			{				
				foreach (ListItem liDeposito in cblTiposDepositos.Items)
				{					
					if (liDeposito.Selected)
					{
						DataRow drDeposito = infraestructuraDepositosData.NewRow(); 
						drDeposito[InfraestructuraDepositosData.INF_ID_FIELD] = this.Identificador;
						drDeposito[InfraestructuraDepositosData.TDE_ID_FIELD] = liDeposito.Value;
						infraestructuraDepositosData.addInfraestructuraDepositos(drDeposito);
					}
				}				
			}
			dsServicios.Tables.Add(infraestructuraDepositosData);

			//Talleres
			InfraestructuraTalleresData infraestructuraTalleresData = new InfraestructuraTalleresData();
			if (rblSiNoTieneTalleres.SelectedValue == Utilidad.SI)
			{				
				foreach (ListItem liTaller in cblTiposTalleres.Items)
				{					
					if (liTaller.Selected)
					{
						DataRow drTalleres = infraestructuraTalleresData.NewRow();
						drTalleres[InfraestructuraTalleresData.INF_ID_FIELD] = this.Identificador;
						drTalleres[InfraestructuraTalleresData.TTA_ID_FIELD] = liTaller.Value;
						infraestructuraTalleresData.addInfraestructuraTalleres(drTalleres);
					}
				}				
			}
			dsServicios.Tables.Add(infraestructuraTalleresData);

			//Boleteria
			InfraestructuraBoleteriaData infraestructuraBoleteriaData = new InfraestructuraBoleteriaData();
			foreach (ListItem liVentaBoleteria in cblVentaBoleteria.Items)
			{				
				if (liVentaBoleteria.Selected)
				{
					DataRow drBoleteria = infraestructuraBoleteriaData.NewRow();
					drBoleteria[InfraestructuraBoleteriaData.INF_ID_FIELD] = this.Identificador;
					drBoleteria[InfraestructuraBoleteriaData.TVB_ID_FIELD] = liVentaBoleteria.Value;
					infraestructuraBoleteriaData.addInfraestructuraBoleteria(drBoleteria);
				}
			}
			dsServicios.Tables.Add(infraestructuraBoleteriaData);

			//Formas Pago
			InfraestructuraFormasPagoData infraestructuraFormasPagoData = new InfraestructuraFormasPagoData();
			foreach (ListItem liFormaPago in cblFormaPago.Items)
			{				
				if (liFormaPago.Selected)
				{
					DataRow drFormasPago = infraestructuraFormasPagoData.NewRow();
					drFormasPago[InfraestructuraFormasPagoData.INF_ID_FIELD] = this.Identificador;
					drFormasPago[InfraestructuraFormasPagoData.FPG_ID_FIELD] = liFormaPago.Value;
					infraestructuraFormasPagoData.addInfraestructuraFormasPago(drFormasPago);
				}
			}
			dsServicios.Tables.Add(infraestructuraFormasPagoData);

			//Salones estar
			InfraestructuraSalonesEstarData infraestructuraSalonesEstarData = new InfraestructuraSalonesEstarData();
			foreach (ListItem liSalonEstar in cblSalonesEstar.Items)
			{							
				if (liSalonEstar.Selected)
				{
					DataRow drSalonEstar = infraestructuraSalonesEstarData.NewRow();
					drSalonEstar[InfraestructuraSalonesEstarData.INF_ID_FIELD] = this.Identificador;
					drSalonEstar[InfraestructuraSalonesEstarData.TSE_ID_FIELD] = liSalonEstar.Value;
					infraestructuraSalonesEstarData.addInfraestructuraSalonesEstar(drSalonEstar);
				}
			}
			dsServicios.Tables.Add(infraestructuraSalonesEstarData);

			return dsServicios;
		}

		public void CreaEntorno(DataSet dsServicios)
		{
			if (!IsPostBack)
			{
				CargarControles();

				InfraestructuraEntidadesServiciosData dtServicios = (InfraestructuraEntidadesServiciosData)dsServicios.Tables[InfraestructuraEntidadesServiciosData.ART_INFRAESTRUCTURA_ENTIDADES_SERVICIOS_TABLE];

				DataRow fila = dtServicios.Rows[0];

				this.Identificador = Convert.ToDecimal(fila[InfraestructuraEntidadesServiciosData.INF_ID_FIELD]);

				txtNumBanosPublicos.Text = fila[InfraestructuraEntidadesServiciosData.INF_NUMERO_BANOS_PUBLICO_FIELD].ToString();

				txtNumSalidasEmergencia.Text = fila[InfraestructuraEntidadesServiciosData.INF_NUMERO_SALIDAS_EMERGENCIA_FIELD].ToString();


				if (fila[InfraestructuraEntidadesServiciosData.INF_TIENE_RAMPAS_DISCAPACITADOS_FIELD] != DBNull.Value && 
					fila[InfraestructuraEntidadesServiciosData.INF_TIENE_RAMPAS_DISCAPACITADOS_FIELD].ToString().Trim() != string.Empty)
				{
					rblSiNoTieneRampasAccesoDiscap.SelectedValue = fila[InfraestructuraEntidadesServiciosData.INF_TIENE_RAMPAS_DISCAPACITADOS_FIELD].ToString();
				}

				if (fila[InfraestructuraEntidadesServiciosData.INF_TIENE_CAMERINOS_FIELD] != DBNull.Value && 
					fila[InfraestructuraEntidadesServiciosData.INF_TIENE_CAMERINOS_FIELD].ToString().Trim() != string.Empty)
				{
					rblSiNoTieneCamerinos.SelectedValue = fila[InfraestructuraEntidadesServiciosData.INF_TIENE_CAMERINOS_FIELD].ToString();
					if (rblSiNoTieneCamerinos.SelectedValue == Utilidad.SI)
					{
						lblNumCamerinosIndividuales.Enabled = true;
						txtNumCamerinosIndividuales.Enabled = true;
						lblNumCamerinosColectivos.Enabled = true;
						txtNumCamerinosColectivos.Enabled = true;
						lblNumBanosArtistas.Enabled = true;
						txtNumBanosArtistas.Enabled = true;
						lblNumDuchas.Enabled = true;
						txtNumDuchas.Enabled = true;
					}
				}

				txtNumCamerinosIndividuales.Text = fila[InfraestructuraEntidadesServiciosData.INF_NUMERO_CAMERINOS_INDIVIDUALES_FIELD].ToString();

				txtNumCamerinosColectivos.Text = fila[InfraestructuraEntidadesServiciosData.INF_NUMERO_CAMERINOS_COLECTIVOS_FIELD].ToString();

				txtNumBanosArtistas.Text = fila[InfraestructuraEntidadesServiciosData.INF_NUMERO_BANOS_ARTISTAS_FIELD].ToString();

				txtNumDuchas.Text = fila[InfraestructuraEntidadesServiciosData.INF_NUMERO_DUCHAS_FIELD].ToString();

				txtNumSalasEnsayo.Text = fila[InfraestructuraEntidadesServiciosData.INF_NUMERO_SALAS_ENSAYO_FIELD].ToString();

				if (fila[InfraestructuraEntidadesServiciosData.INF_TIENE_LINOLEO_FIELD] != DBNull.Value && 
					fila[InfraestructuraEntidadesServiciosData.INF_TIENE_LINOLEO_FIELD].ToString() != string.Empty)
				{
					rblSiNoTieneLinoleo.SelectedValue = fila[InfraestructuraEntidadesServiciosData.INF_TIENE_LINOLEO_FIELD].ToString();
				}

				if (fila[InfraestructuraEntidadesServiciosData.INF_TIENE_DEPOSITOS_FIELD] != DBNull.Value && 
					fila[InfraestructuraEntidadesServiciosData.INF_TIENE_DEPOSITOS_FIELD].ToString() != string.Empty)
				{
					rblSiNoTieneDepositos.SelectedValue = fila[InfraestructuraEntidadesServiciosData.INF_TIENE_DEPOSITOS_FIELD].ToString();
					if (rblSiNoTieneDepositos.SelectedValue == Utilidad.SI)
					{
						lblTiposDepositos.Enabled = true;
						cblTiposDepositos.Attributes["disabled"] = null;
					}
				}

				if (fila[InfraestructuraEntidadesServiciosData.INF_TIENE_TALLERES_FIELD] != DBNull.Value && 
					fila[InfraestructuraEntidadesServiciosData.INF_TIENE_TALLERES_FIELD].ToString() != string.Empty)
				{
					rblSiNoTieneTalleres.SelectedValue = fila[InfraestructuraEntidadesServiciosData.INF_TIENE_TALLERES_FIELD].ToString();
					if (rblSiNoTieneTalleres.SelectedValue == Utilidad.SI)
					{
						lblTiposTalleres.Enabled = true;
						cblTiposTalleres.Attributes["disabled"] = null;
					}
				}

				if (fila[InfraestructuraEntidadesServiciosData.INF_TIENE_PLAN_EMERGENCIA_FIELD] != DBNull.Value && 
					fila[InfraestructuraEntidadesServiciosData.INF_TIENE_PLAN_EMERGENCIA_FIELD].ToString() != string.Empty)
				{
					rblSiNoTienePlanManejoEmergencias.SelectedValue = fila[InfraestructuraEntidadesServiciosData.INF_TIENE_PLAN_EMERGENCIA_FIELD].ToString();
				}

				if (fila[InfraestructuraEntidadesServiciosData.INF_TIENE_SENALIZACION_EVACUACION_FIELD] != DBNull.Value && 
					fila[InfraestructuraEntidadesServiciosData.INF_TIENE_SENALIZACION_EVACUACION_FIELD].ToString() != string.Empty)
				{
					rblSiNoTieneSenalizacionRutasEvacuacion.SelectedValue = fila[InfraestructuraEntidadesServiciosData.INF_TIENE_SENALIZACION_EVACUACION_FIELD].ToString();
				}

				if (fila[InfraestructuraEntidadesServiciosData.INF_TIENE_ENFERMERIA_FIELD] != DBNull.Value && 
					fila[InfraestructuraEntidadesServiciosData.INF_TIENE_ENFERMERIA_FIELD].ToString() != string.Empty)
				{
					rblSiNoTieneEnfermeria.SelectedValue = fila[InfraestructuraEntidadesServiciosData.INF_TIENE_ENFERMERIA_FIELD].ToString();
				}

				if (fila[InfraestructuraEntidadesServiciosData.INF_TIENE_BOTIQUIN_FIELD] != DBNull.Value && 
					fila[InfraestructuraEntidadesServiciosData.INF_TIENE_BOTIQUIN_FIELD].ToString() != string.Empty)
				{
					rblSiNoTieneBotiquin.SelectedValue = fila[InfraestructuraEntidadesServiciosData.INF_TIENE_BOTIQUIN_FIELD].ToString();
				}

				txtNumExtintores.Text = fila[InfraestructuraEntidadesServiciosData.INF_NUMERO_EXTINTORES_FIELD].ToString();

				if (fila[InfraestructuraEntidadesServiciosData.INF_TIENE_PLANTA_ENERGIA_FIELD] != DBNull.Value && 
					fila[InfraestructuraEntidadesServiciosData.INF_TIENE_PLANTA_ENERGIA_FIELD].ToString() != string.Empty)
				{
					rblSiNoTienePlantaEnergia.SelectedValue = fila[InfraestructuraEntidadesServiciosData.INF_TIENE_PLANTA_ENERGIA_FIELD].ToString();
				}

				InfraestructuraBoleteriaData infraestructuraBoleteriaData = (InfraestructuraBoleteriaData)dsServicios.Tables[InfraestructuraBoleteriaData.ART_INFRAESTRUCTURA_BOLETERIA_TABLE];
				foreach (DataRow drBoleteria in infraestructuraBoleteriaData.Rows)
				{
					ListItem liVentaBoleteria = cblVentaBoleteria.Items.FindByValue(drBoleteria[InfraestructuraBoleteriaData.TVB_ID_FIELD].ToString());
					if (liVentaBoleteria!=null)
					{
						liVentaBoleteria.Selected = true;
					}
				}

				InfraestructuraFormasPagoData infraestructuraFormasPagoData = (InfraestructuraFormasPagoData)dsServicios.Tables[InfraestructuraFormasPagoData.ART_INFRAESTRUCTURA_FORMAS_PAGO_TABLE];
				foreach (DataRow drFormasPago in infraestructuraFormasPagoData.Rows)
				{
					ListItem liFormaPago = cblFormaPago.Items.FindByValue(drFormasPago[InfraestructuraFormasPagoData.FPG_ID_FIELD].ToString());
					if (liFormaPago != null)
					{
						liFormaPago.Selected = true;
					}
				}

				InfraestructuraSalonesEstarData infraestructuraSalonesEstarData = (InfraestructuraSalonesEstarData)dsServicios.Tables[InfraestructuraSalonesEstarData.ART_INFRAESTRUCTURA_SALONES_ESTAR_TABLE];
				foreach (DataRow drSalonEstar in infraestructuraSalonesEstarData.Rows)
				{
					ListItem liSalonEstar = cblSalonesEstar.Items.FindByValue(drSalonEstar[InfraestructuraSalonesEstarData.TSE_ID_FIELD].ToString());
					if (liSalonEstar != null)
					{
						liSalonEstar.Selected = true;
					}
				}

				InfraestructuraDepositosData infraestructuraDepositosData = (InfraestructuraDepositosData)dsServicios.Tables[InfraestructuraDepositosData.ART_INFRAESTRUCTURA_DEPOSITOS_TABLE];
				foreach (DataRow drDeposito in infraestructuraDepositosData.Rows)
				{
					ListItem liDeposito = cblTiposDepositos.Items.FindByValue(drDeposito[InfraestructuraDepositosData.TDE_ID_FIELD].ToString());
					if (liDeposito != null)
					{
						liDeposito.Selected = true;
					}
				}

				InfraestructuraTalleresData infraestructuraTalleresData = (InfraestructuraTalleresData)dsServicios.Tables[InfraestructuraTalleresData.ART_INFRAESTRUCTURA_TALLERES_TABLE];
				foreach (DataRow drTalleres in infraestructuraTalleresData.Rows)
				{
					ListItem liTaller = cblTiposTalleres.Items.FindByValue(drTalleres[InfraestructuraTalleresData.TTA_ID_FIELD].ToString());
					if (liTaller != null)
					{
						liTaller.Selected = true;
					}
				}
			}
		}

		private void CargarControles()
		{
			cblVentaBoleteria.Items.Clear();
            TiposVentaBoleteria objBRVentaBoleteria = new TiposVentaBoleteria(ConfigurationManager.AppSettings["Conn"]);
			TiposVentaBoleteriaData objDataVentaBoleteria = new TiposVentaBoleteriaData();
			objDataVentaBoleteria = objBRVentaBoleteria.BuscarTiposVentaBoleteria();
			if (objDataVentaBoleteria != null)
			{				
				cblVentaBoleteria.DataSource = objDataVentaBoleteria.Tables[0].DefaultView;
				cblVentaBoleteria.DataTextField = TiposVentaBoleteriaData.TVB_NOMBRE_FIELD;
				cblVentaBoleteria.DataValueField = TiposVentaBoleteriaData.TVB_ID_FIELD;
				cblVentaBoleteria.DataBind();
			}			

			cblFormaPago.Items.Clear();
            FormaPago objBRFormaPago = new FormaPago(ConfigurationManager.AppSettings["Conn"]);
			FormasPagoData objDataFormaPago = new FormasPagoData();
			objDataFormaPago = objBRFormaPago.BuscarFormaPago();
			if (objDataFormaPago != null)
			{				
				cblFormaPago.DataSource = objDataFormaPago.DefaultView;
				cblFormaPago.DataTextField = FormasPagoData.FPG_NOMBRE_FIELD;
				cblFormaPago.DataValueField = FormasPagoData.FPG_ID_FIELD;
				cblFormaPago.DataBind();
			}

			cblSalonesEstar.Items.Clear();
            TiposSalonesEstar objBRTiposSalonesEstar = new TiposSalonesEstar(ConfigurationManager.AppSettings["conn"]);
			TiposSalonesEstarData objDataTiposSalonesEstar = new TiposSalonesEstarData();
			objDataTiposSalonesEstar = objBRTiposSalonesEstar.BuscarTiposSalonesEstar();
			if (objDataTiposSalonesEstar != null)
			{				
				cblSalonesEstar.DataSource = objDataTiposSalonesEstar.Tables[0].DefaultView;
				cblSalonesEstar.DataTextField = TiposSalonesEstarData.TSE_NOMBRE_FIELD;
				cblSalonesEstar.DataValueField = TiposSalonesEstarData.TSE_ID_FIELD;
				cblSalonesEstar.DataBind();
			}
			
			cblTiposDepositos.Items.Clear();
            TiposDepositos objBRTiposDepositos = new TiposDepositos(ConfigurationManager.AppSettings["Conn"]);
			TiposDepositosData objDataTiposDepositos = new TiposDepositosData();
			objDataTiposDepositos = objBRTiposDepositos.BuscarTiposDepositos();
			if (objDataTiposDepositos != null)
			{				
				cblTiposDepositos.DataSource = objDataTiposDepositos.Tables[0].DefaultView;
				cblTiposDepositos.DataTextField = TiposDepositosData.TDE_NOMBRE_FIELD;
				cblTiposDepositos.DataValueField = TiposDepositosData.TDE_ID_FIELD;
				cblTiposDepositos.DataBind();
			}
			cblTiposDepositos.Attributes["disabled"] = "disabled";

			cblTiposTalleres.Items.Clear();
            TiposTalleres objBRTiposTalleres = new TiposTalleres(ConfigurationManager.AppSettings["conn"]);
			TiposTalleresData objDataTiposTalleres = new TiposTalleresData();
			objDataTiposTalleres = objBRTiposTalleres.BuscarTiposTalleres();
			if (objDataTiposTalleres != null)
			{				
				cblTiposTalleres.DataSource = objDataTiposTalleres.Tables[0].DefaultView;
				cblTiposTalleres.DataTextField = TiposTalleresData.TTA_NOMBRE_FIELD;
				cblTiposTalleres.DataValueField = TiposTalleresData.TTA_ID_FIELD;
				cblTiposTalleres.DataBind();
			}
			cblTiposTalleres.Attributes["disabled"] = "disabled";
		}
		#endregion 

		#region - Propiedades

		public decimal Identificador
		{
			get
			{
				if (ViewState["Identificador"] != null)
					return ((decimal) ViewState["Identificador"]);
				else
					return (0);
			}
			set { ViewState["Identificador"] = decimal.Parse(value.ToString()); }
		}

		public DataSet ServiciosData
		{
			get
			{
				return ObtenerDatos();
			}
			set
			{
				CreaEntorno(value);
			}
		}

		#endregion 

		#region Web Form Designer generated code

		protected override void OnInit(EventArgs e)
		{
			InitializeComponent();
			base.OnInit(e);
		}

		private void InitializeComponent()
		{
			this.Load += new System.EventHandler(this.Page_Load);

		}

		#endregion

	}
}